_s_i_z_e Specifies the number of coordinates per vertex, must be 2,3, or
4.
_t_y_p_e Specifies the data type of each coordinate in the array.
Symbolic constants GGGGLLLL____SSSSHHHHOOOORRRRTTTT, GGGGLLLL____IIIINNNNTTTT, GGGGLLLL____FFFFLLLLOOOOAAAATTTT, or GGGGLLLL____DDDDOOOOUUUUBBBBLLLLEEEE____EEEEXXXXTTTT
are accepted.
_s_t_r_i_d_e Specifies the byte offset between consecutive vertexes. If
_s_t_r_i_d_e is 0 the vertexes are understood to be tightly packed in
the array.
_c_o_u_n_t Specifies the number of vertexes, counting from the first, that
are static.
_p_o_i_n_t_e_r Specifies a pointer to the first coordinate of the first vertex
in the array.
DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
ggggllllVVVVeeeerrrrtttteeeexxxxPPPPooooiiiinnnntttteeeerrrrEEEEXXXXTTTT specifies the location and data format of an array of
vertex coordinates to use when rendering using the vertex array
extension. _s_i_z_e specifies the number of coordinates per vertex and _t_y_p_e
the data type of the coordinates. _s_t_r_i_d_e gives the byte stride from one
vertex to the next allowing vertexes and attributes to be packed into a
single array or stored in separate arrays. (Single-array storage may be
more efficient on some implementations.) _c_o_u_n_t indicates the number of
array elements (counting from the first) that are static. Static elements
may be modified by the application, but once they are modified, the
application must explicitly respecify the array before using it for any
rendering. When a vertex array is specified, _s_i_z_e, _t_y_p_e, _s_t_r_i_d_e, _c_o_u_n_t,
and _p_o_i_n_t_e_r are saved as client-side state, and static array elements may
be cached by the implementation.
The vertex array is enabled and disabled using ggggllllEEEEnnnnaaaabbbblllleeee and ggggllllDDDDiiiissssaaaabbbblllleeee
with the argument GGGGLLLL____VVVVEEEERRRRTTTTEEEEXXXX____AAAARRRRRRRRAAAAYYYY____EEEEXXXXTTTT. If enabled, the vertex array is
used when ggggllllDDDDrrrraaaawwwwAAAArrrrrrrraaaayyyyssssEEEEXXXXTTTT or ggggllllAAAArrrrrrrraaaayyyyEEEElllleeeemmmmeeeennnnttttEEEEXXXXTTTT is called.
Use ggggllllDDDDrrrraaaawwwwAAAArrrrrrrraaaayyyyssssEEEEXXXXTTTT to define a sequence of primitives (all of the same
type) from pre-specified vertex and vertex attribute arrays. Use
ggggllllAAAArrrrrrrraaaayyyyEEEElllleeeemmmmeeeennnnttttEEEEXXXXTTTT to specify primitives by indexing vertexes and vertex
Non-static array elements are not accessed until ggggllllAAAArrrrrrrraaaayyyyEEEElllleeeemmmmeeeennnnttttEEEEXXXXTTTT or
ggggllllDDDDrrrraaaawwwwAAAArrrrrrrraaaayyyyssssEEEEXXXXTTTT is executed.
By default the vertex array is disabled and it won't be accessed when
ggggllllAAAArrrrrrrraaaayyyyEEEElllleeeemmmmeeeennnnttttEEEEXXXXTTTT or ggggllllDDDDrrrraaaawwwwAAAArrrrrrrraaaayyyyssssEEEEXXXXTTTT is called.
Although it is not an error to call ggggllllVVVVeeeerrrrtttteeeexxxxPPPPooooiiiinnnntttteeeerrrrEEEEXXXXTTTT between the
execution of ggggllllBBBBeeeeggggiiiinnnn and the corresponding execution of ggggllllEEEEnnnndddd, the
results are undefined.
ggggllllVVVVeeeerrrrtttteeeexxxxPPPPooooiiiinnnntttteeeerrrrEEEEXXXXTTTT will typically be implemented on the client side with
no protocol.
Since the vertex array parameters are client side state, they are not
saved or restored by ggggllllPPPPuuuusssshhhhAAAAttttttttrrrriiiibbbb and ggggllllPPPPooooppppAAAAttttttttrrrriiiibbbb.
ggggllllVVVVeeeerrrrtttteeeexxxxPPPPooooiiiinnnntttteeeerrrrEEEEXXXXTTTT commands are not entered into display lists.
ggggllllVVVVeeeerrrrtttteeeexxxxPPPPooooiiiinnnntttteeeerrrrEEEEXXXXTTTT is part of the EEEEXXXXTTTT____vvvveeeerrrrtttteeeexxxx____aaaarrrrrrrraaaayyyy extension, not part of
the core GL command set. If GGGGLLLL____EEEEXXXXTTTT____vvvveeeerrrrtttteeeexxxx____aaaarrrrrrrraaaayyyy is included in the string
returned by ggggllllGGGGeeeettttSSSSttttrrrriiiinnnngggg, when called with argument GGGGLLLL____EEEEXXXXTTTTEEEENNNNSSSSIIIIOOOONNNNSSSS,
extension EEEEXXXXTTTT____vvvveeeerrrrtttteeeexxxx____aaaarrrrrrrraaaayyyy is supported.
EEEERRRRRRRROOOORRRRSSSS
GGGGLLLL____IIIINNNNVVVVAAAALLLLIIIIDDDD____VVVVAAAALLLLUUUUEEEE is generated if _s_i_z_e is not 2, 3, or 4.
GGGGLLLL____IIIINNNNVVVVAAAALLLLIIIIDDDD____EEEENNNNUUUUMMMM is generated if _t_y_p_e is is not an accepted value.
GGGGLLLL____IIIINNNNVVVVAAAALLLLIIIIDDDD____VVVVAAAALLLLUUUUEEEE is generated if _s_t_r_i_d_e or _c_o_u_n_t is negative.
ggggllllIIIIssssEEEEnnnnaaaabbbblllleeeedddd with argument GGGGLLLL____VVVVEEEERRRRTTTTEEEEXXXX____AAAARRRRRRRRAAAAYYYY____EEEEXXXXTTTT
ggggllllGGGGeeeetttt with argument GGGGLLLL____VVVVEEEERRRRTTTTEEEEXXXX____AAAARRRRRRRRAAAAYYYY____SSSSIIIIZZZZEEEE____EEEEXXXXTTTT
ggggllllGGGGeeeetttt with argument GGGGLLLL____VVVVEEEERRRRTTTTEEEEXXXX____AAAARRRRRRRRAAAAYYYY____TTTTYYYYPPPPEEEE____EEEEXXXXTTTT
ggggllllGGGGeeeetttt with argument GGGGLLLL____VVVVEEEERRRRTTTTEEEEXXXX____AAAARRRRRRRRAAAAYYYY____SSSSTTTTRRRRIIIIDDDDEEEE____EEEEXXXXTTTT
ggggllllGGGGeeeetttt with argument GGGGLLLL____VVVVEEEERRRRTTTTEEEEXXXX____AAAARRRRRRRRAAAAYYYY____CCCCOOOOUUUUNNNNTTTT____EEEEXXXXTTTT
ggggllllGGGGeeeettttPPPPooooiiiinnnntttteeeerrrrvvvvEEEEXXXXTTTT with argument GGGGLLLL____VVVVEEEERRRRTTTTEEEEXXXX____AAAARRRRRRRRAAAAYYYY____PPPPOOOOIIIINNNNTTTTEEEERRRR____EEEEXXXXTTTT
GGGGLLLL____IIIINNNNDDDDEEEEXXXX____AAAARRRRRRRRAAAAYYYY____EEEEXXXXTTTT, GGGGLLLL____TTTTEEEEXXXXTTTTUUUURRRREEEE____CCCCOOOOOOOORRRRDDDD____AAAARRRRRRRRAAAAYYYY____EEEEXXXXTTTT, or GGGGLLLL____EEEEDDDDGGGGEEEE____FFFFLLLLAAAAGGGG____AAAARRRRRRRRAAAAYYYY____EEEEXXXXTTTT